home *** CD-ROM | disk | FTP | other *** search
/ Freaks Macintosh Archive / Freaks Macintosh Archive.bin / Freaks Macintosh Archives / Crypto⁄Encryption / MacEncrypt.sit / MacEncrypt / MacEncrypt Doc (Text) < prev    next >
Text File  |  1993-05-06  |  18KB  |  371 lines

  1.  
  2.  
  3.  
  4. MacEncrypt
  5. File Encryption for the Macintosh
  6.  
  7.  
  8.  
  9. Version 2.0
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16. by
  17. J. Clarke Stevens
  18.  
  19. MacEncrypt
  20.  
  21.  
  22. What Is It?
  23.  
  24. MacEncrypt is an application that uses the Data Encryption Standard (DES) to scramble 
  25. the bits of your files until they are totally unrecognizable.
  26. Why Would I Want It?
  27.  
  28. Scrambling your bits (or encrypting) is useful if you don’t want other people knowing 
  29. what is in your files.  The bits are scrambled with a secret key that you type in.  Unless 
  30. someone discovers your key it is practically impossible for them to unscramble (decrypt) 
  31. your files.
  32.  
  33. MacEncrypt is intuitive and convenient.  You can encrypt files from within the 
  34. application using standard file dialog boxes or use the “drag and drop” technique to 
  35. encrypt one or many files automatically.  You can decrypt a file from within the 
  36. application or by simply double-clicking on an encrypted file.
  37.  
  38. How Do I Use It?
  39.  
  40. You can probably run MacEncrypt without reading this document, but just for the record, 
  41. here is what you need to do.
  42.  
  43. Encryption
  44.  
  45. Encryption is the process of reading an unsuspecting file, scrambling its bits with an 
  46. encryption password, and writing the scramble bits out to the file again.  MacEncrypt 
  47. uses the Data Encryption Standard (DES) for file encryption.  If you want to know more 
  48. about DES, a brief overview is included in this document.
  49. Selecting the File
  50.  
  51. The first step in the encryption process is selecting a file or group of files to be encrypted.  
  52. This can be done in two ways with MacEncrypt.  The first method is to open the file from 
  53. within MacEncrypt.  The second method is to use the “drag and drop” technique from the 
  54. finder.
  55.  
  56. From the Application
  57.  
  58. To select a file for encryption from the application, open MacEncrypt by double-clicking 
  59. on its icon (the TOP SECRET manila folder with an “application” hand).  You should see 
  60. a menu bar appear with “File” and “Options” menus.  There is also an “About 
  61. MacEncrypt” item under the apple menu.
  62. Choose the “Encrypt…” item from the “File” menu and you should get a standard file 
  63. dialog box.  Use the regular techniques for selecting a file to be encrypted.
  64. From the Finder
  65.  
  66. You can also select a file or group of files to be encrypted using the “drag and drop” 
  67. technique.  To do this, use the shift-click combination to select any files you want to 
  68. encrypt.  Release the shift key and click on one of the hilighted files.  While holding 
  69. down the mouse button, drag the files and drop them (release the mouse button) on the 
  70. MacEncrypt application icon.  MacEncrypt will open automatically and ask for an 
  71. encryption key.
  72.  
  73. Entering the Key
  74.  
  75. The Data Encryption Standard requires a user-supplied encryption key.  After you have 
  76. selected a file to encrypt, a dialog box will appear requesting that you type an encryption 
  77. key.  The encryption key is a string of typable (and possibly some untypable) characters.  
  78. All the standard letters, numbers, and symbols on the keyboard can be used.  In addition, 
  79. some of the keys that have no “character” associated with them (such as the “home” key) 
  80. can be used to make your key particularly hard to guess.
  81.  
  82. It is important to note that the Data Encryption Standard only uses 64 bit (i.e. eight 
  83. character) keys.  Anything you type for the key that is beyond eight characters is ignored, 
  84. but longer strings are supported so that any length of password (up to 255 characters) can 
  85. be used for convenience.  A password of zero length is also allowed.
  86.  
  87. Visibility
  88.  
  89. You can have the passwords you type be visible or invisible.  In the visible password 
  90. mode, characters will appear on the screen as you type them.  In the invisible mode, a 
  91. bullet character (•) will appear instead of the character you type.  MacEncrypt remembers 
  92. the characters you type, but someone looking over your shoulder will not be able to see 
  93. the password.  You can turn password visibility on and off by selecting the “Visible 
  94. Passwords” item under the “Options” menu.
  95.  
  96. Verification
  97.  
  98. There is a danger in using invisible passwords that you might accidentally type a 
  99. character in your password and not realize it.  If a file were encrypted with such a 
  100. password, you would probably not be able to type the right password during decryption 
  101. and your file would be lost forever.  In order to avoid this situation, you are required to 
  102. type the password twice before encrypting a file.  If the passwords match, the file will be 
  103. encrypted.  If they don’t match, you will be asked to type them again.  This is true for 
  104. visible as well as invisible passwords because there are some characters which can be 
  105. typed but not drawn on the screen.  These can be useful in passwords, but you need to 
  106. type them intentionally.  Password verification can help ensure that you know your 
  107. password.
  108.  
  109. Reusing Passwords
  110.  
  111. Multiple files can be selected for encryption from the finder.  If the “Reuse Passwords” 
  112. option is selected (from the options menu in MacEncrypt), a single password will be used 
  113. on all the selected files.  If “ReusePasswords” is not selected, you will be prompted to 
  114. type a password for each file.  It is important to note that whenever you change selections 
  115. in the option menu within MacEncrypt those changes are remembered when MacEncrypt 
  116. is closed.  The same options will be used when files are “dropped” on MacEncrypt for 
  117. encryption or decryption.
  118.  
  119. Encrypting
  120.  
  121. When your password is verified, MacEncrypt immediately begins to encrypt the selected 
  122. file.  During encryption, an animated cursor (a Morse code key set) will indicate that the 
  123. file is being encrypted.  MacEncrypt encrypts about three kilobytes per second on my 
  124. Mac IIsi.  Your mileage may vary.  When the encryption is complete, the cursor will 
  125. return to normal.  If you started the encryption from within MacEncrypt, you can select 
  126. another file to encrypt or decrypt or quit the application.  If you started from the finder, 
  127. MacEncrypt will automatically quit and return you to the finder.
  128.  
  129. It is handy to put MacEncrypt on the desktop near the garbage can.  When you want to 
  130. encrypt a file, simply drag it to the MacEncrypt Icon and type the encryption password.  
  131. The encryption will take place and you will be returned to the finder ready to continue 
  132. your tasks.
  133.  
  134. Decryption
  135.  
  136. Decryption is the process of reading an encrypted file and unscrambling its bits using a 
  137. decryption password.  If the password is correct, the file will be returned to its original 
  138. unencrypted state.
  139.  
  140. Selecting the File
  141.  
  142. The process for selecting a file to encrypt is similar to the process used to select a file to 
  143. encrypt.  You can select the file from within MacEncrypt using standard file dialog boxes 
  144. or start MacEncrypt from the finder by using the “drag and drop” technique or by double-
  145. clicking an encrypted file.
  146.  
  147. From the Application
  148.  
  149. To select a file for decryption from within MacEncrypt, first open MacEncrypt by 
  150. double-clicking on its icon.  The MacEncrypt menu bar should appear.  Choose the 
  151. “Decrypt…” item from the “File” menu.  A standard file dialog box should pop up.  You 
  152. can then select the file to be Decrypted using the standard file dialog navigation 
  153. techniques.
  154.  
  155. From the Finder
  156.  
  157. There are two ways to start the decryption process from the finder.  The first process is 
  158. using the “drag and drop” technique.  Simply use the shift-click method to select the files 
  159. to decrypt, then drag and drop the files on the MacEncrypt application icon.  Each of the 
  160. files will ask for a password and then be decrypted.  The encryption process can also be 
  161. started this way.
  162.  
  163. The second way to initiate decryption from the finder is to double-click on an encrypted 
  164. file or to select a file and choose “Open” from the finder “File” menu.  Since encrypted 
  165. files belong to the MacEncrypt application, double-clicking on an encrypted file will start 
  166. the process to open the file using its creating application (MacEncrypt).
  167. Entering the Key
  168.  
  169. After the file is selected, you will be requested to supply a decryption key.  The MUST be 
  170. the exact same key used to originally encrypt the file.  If you type the right key, the file 
  171. will be decrypted, if you type the wrong key, nothing will happen.
  172.  
  173. Visibility
  174.  
  175. The visibility option in decryption works just as it does in encryption.  If the visibility 
  176. option is on, the characters will appear as you type them.  If it is switched off, only bullet 
  177. characters (•) will appear.  You can toggle the visibility option by selecting the “Visible 
  178. Passwords” item under the “Options” menu.
  179.  
  180. Verification
  181.  
  182. It is only necessary to type the decryption password once since typing the wrong 
  183. password will only mean that you have to try again.  If you type the wrong password, a 
  184. dialog box will appear indicating that the password entered was incorrect.  If you type the 
  185. correct password, decryption will begin immediately.
  186.  
  187. Decrypting
  188.  
  189. As in the encryption process, during decryption an animated cursor will indicate that the 
  190. file is being decrypted.  Decryption occurs at the same rate as encryption (about 3 
  191. kBytes/sec on my Mac IIsi).  The cursor will return to normal when encryption is 
  192. complete.  If the decryption process was started from within MacEncrypt, you will be 
  193. returned to MacEncrypt and can encrypt or decrypt other files.  If you started from the 
  194. finder, either the next file in the group will be processed (encrypted or decrypted) or 
  195. control will be returned to the finder.
  196.  
  197. Options
  198.  
  199. There is five items in the “Options” menu.  The status of these options is saved when you 
  200. quit MacEncrypt, so you don’t need to worry about adjusting the options each time the 
  201. application is started.  The options selected when you quit MacEncrypt are the options 
  202. that will be used if you “drag and drop” items on MacEncrypt from the finder.
  203. Visible Passwords
  204.  
  205. This is the “Visible Passwords” item.  If the item is marked with a check mark, 
  206. passwords will be visible and characters will appear as you type them from the keyboard.  
  207. If the item is not check-marked, password will show up as a string of bullet-characters (•).
  208. Reusable Passwords
  209.  
  210. If the “Reusable Passwords” option is checked, the same password will be used to 
  211. encrypt all selected files.  This is handy if you want to encrypt several files at once and 
  212. you don’t want to retype the same password for each file.  If the item is not checked, you 
  213. will be prompted to enter a password for each file.
  214.  
  215. Extra Security
  216.  
  217. The “Extra Security” option is handy if you need protection against particularly snoopy 
  218. people who will use disk level editors to try to read bits from the disk where your file was 
  219. before encryption.  If this option is checked, MacEncrypt will “shred” the old file to 
  220. ensure that it can’t be read by a disk editing program.  Selecting this option will make the 
  221. encryption process take longer.  (Nothing is free.)
  222.  
  223. Multi-Item Archives
  224.  
  225. Multi-item archives are new to version 2.0.  If this option is checked, multiple files can be 
  226. encrypted to a single archive file (the icon looks like a safe).  This is handy if you want to 
  227. encrypt all the files in a directory at once and you don’t need to access them individually.  
  228. It is also nice if you don’t want people to know the names of your files.  When an archive 
  229. is decrypted, all the files in the archive are decrypted.
  230.  
  231. Delete Archived Items
  232.  
  233. When an archive is created the encrypted files can be deleted or left alone.  If “Delete 
  234. Archived Items” is checked, items will be deleted (and can be shredded) as they are put in 
  235. the archive.  If the item is not checked, the files will remain in place.
  236.  
  237. How Do I Pay For It?
  238.  
  239. MacEncrypt is NOT free.  It is shareware.  If you keep it for more than a month (30 days) 
  240. you are obligated to pay for it.  Please send the shareware fee of $10.00 (U.S.) to:
  241.  
  242. J. Clarke Stevens
  243. MacEncrypt
  244. 1118 Forrest Blvd.
  245. Decatur, GA  30030
  246. U.S.A.
  247.  
  248. As a benefit of registration, I will provide limited support (limited to e-mail or U.S. Mail) 
  249. and will be more likely to implement suggestions you have for future versions.  I will also 
  250. notify you of all future versions of the program as well as other programs I produce.  
  251. Support shareware to encourage the development of quality, try and buy, affordable 
  252. software.  Site licenses are available and terms are negotiable.  If you would like to see a 
  253. particular new feature in MacEncrypt, let me know.  If it’s a good idea, I will probably 
  254. put it in eventually.  If it is a good idea and you are willing to bribe me, I will put it in 
  255. sooner.
  256.  
  257. How Does It Work?
  258.  
  259. Data Encryption Standard (DES)
  260.  
  261. For those of you who are curious, I have included the following information on the 
  262. history of the Data Encryption Standard and the encryption methods used in DES.  Much 
  263. of this information is a summary of the presentation by Dominic Welsh in his book Codes 
  264. and Cryptography (Oxford Scientific Publications, 1989).
  265.  
  266. DES History
  267.  
  268. Motivated by the increase in digital data communications in the early seventies, the U.S. 
  269. government decided to adopt a standard for data security.  The National Bureau of 
  270. Standards sponsored a search for a scheme that could be implemented on a single chip 
  271. and mass-produced.  The winner of the search was IBM.
  272.  
  273. The scheme proposed by IBM was an adaptation of a scheme they had previously 
  274. developed called Lucifer.  The main difference between Lucifer and the Data Encryption 
  275. Standard is the size of the encryption key.  Lucifer uses a 128 bit key while DES uses a 
  276. 64 bit key (eight of which are discarded by the algorithm).
  277.  
  278. The size of the key has generated quite a controversy.  A paper by M.E. Hellman and W. 
  279. Diffie of Stanford University pointed out that a key length of 56 bits is uncomfortably 
  280. short.  A subsequent New York Times article by D. Kahn fueled the fire.  As a result, the 
  281. National Bureau of Standards sponsored workshops to discuss the issue.  The problem 
  282. was further complicated by the refusal of IBM do disclose some of the design principles 
  283. used because they were classified.
  284.  
  285. The conclusion of most attending the workshops was that DES would be acceptably 
  286. secure for about 10 years (DES was adopted in 1977).  However, the only known method 
  287. for breaking the code is an exhaustive search.  That means 255 attempts.  Since with 
  288. current computing power, this is not practical, your data is reasonably safe.  You don’t 
  289. need to worry about someone breaking you code with a personal computer.
  290.  
  291. Encryption Methods in DES
  292.  
  293. The following methods are used in DES:
  294.  
  295. 1.    A 64-bit block is broken into left (L) and right (R) halves.
  296. 2.    The right half of the block (R) becomes the input to the left half (L’) of the next stage.
  297. 3.    The input to the right half of the next stage (R’) is calculated by
  298. a.    scrambling and diffusing R to make it 48 bits,
  299. b.    forming the modulo-2 sum with one bit of the key,
  300. c.    passing it through the infamous S-boxes (a non-linear transform) to make it 32 
  301. bits,
  302. d.    permuting it by the operation P,
  303. e.    summing it modulo-2 with L to get R’.
  304. 4.    Finally, the left and right halves are combined again using the inverse of the initial 
  305. permutation matrix.
  306.  
  307. Each of the S-boxes transforms six input bits to four output bits.  There is an S-box for 
  308. each bit of the key.  For a more detailed explanation, read the section on DES in the book 
  309. by Dominic Welsh.
  310.  
  311. How Hard Is It To Break?
  312.  
  313. Breaking the DES algorithm is equivalent to solving an NP-hard (nondeterministic 
  314. polynomial time) problem.  Solving algebraic equations modulo 2 is an NP-hard problem.  
  315. There is no fast algorithm known for solving any NP-hard problem.  In other words, 
  316. breaking a cryptosystem based on an NP-hard problem is equivalent to finding a fast 
  317. algorithm to solve the problem.  DES is based on an NP-hard problem.  The only way 
  318. known to break it is to use an exhaustive search of all the 255 possible passwords.  This 
  319. would take the fastest known computer years to complete.  Your data is pretty safe, but 
  320. theoretically not totally safe, if you encrypt it using DES.  The weak link is the password, 
  321. if someone discovers your password, your data is at risk!
  322.  
  323. Who Is Responsible?
  324.  
  325. MacEncrypt was written by J. Clarke Stevens using knowledge of the Data Encryption 
  326. Standard gleaned from a graduate class on codes and cryptography in the department of 
  327. Electrical Engineering at Georgia Tech.  I was disappointed when I could find no simple 
  328. shareware program for implementing the algorithm on the Macintosh, so I decided to fill 
  329. the void myself.  The DES engine is based on public domain DES code written by Phil 
  330. Karn and Jim Gillogly.  MacEncrypt was written using Symantec’s THINK C.
  331.  
  332. Once you register, I will be happy to respond to bug reports and suggestions you may 
  333. have for future versions of MacEncrypt.
  334.  
  335. Bug Reports and Suggested Improvements
  336.  
  337. You can send bug reports and suggestions for enhancements to MacEncrypt to me using 
  338. the following methods.
  339.  
  340. Internet
  341.  
  342. This is my preferred means of communication.  I can usually respond very quickly.  My 
  343. address is:
  344.  
  345. jcstevens@mortimer.atl.ga.us
  346.  
  347. U.S. Mail (SnailMail)
  348.  
  349. If you can’t send e-mail, you can always reach me eventually with conventional mail at:
  350.  
  351. J. Clarke Stevens
  352. MacEncrypt
  353. 1118 Forrest Blvd.
  354. Decatur, GA  30030
  355. U.S.A.
  356.  
  357. Liability
  358.  
  359. I have tested this program quite extensively and have used it on my own files.  I believe it 
  360. to be quite safe and have found no evidence to the contrary.  That notwithstanding, the 
  361. following statement applies.
  362.  
  363. Legal Junk follows:
  364.  
  365. MACENCRYPT IS A COPYRIGHTED COMPUTER PROGRAM OF J. CLARKE 
  366. STEVENS AND SUPPLIED AS-IS.  J. CLARKE STEVENS MAKES NO 
  367. WARRANTIES, EITHER EXPRESS OR IMPLIED REGARDING THE ENCLOSED 
  368. SOFTWARE PROGRAM OR ITS SUITABILITY FOR ANY PARTICULAR 
  369. PURPOSE.  J. CLARKE STEVENS WILL NOT BE LIABLE FOR ANY DAMAGES 
  370. THAT MAY OCCUR AS A RESULT OF USING THIS PROGRAM.
  371.